//  [10/10/2013 OMEGA] created

#ifndef _DUELASSECOMMAND_H_
#define _DUELASSECOMMAND_H_

#include <QUndoCommand>
#include "DuelAssECommon.h"

// base class for DAssE commands.
class DAssECommand : public QUndoCommand
{
public:
	DAssECommand(DAssEWorkbench* workbench, QUndoCommand* parent) : 
		QUndoCommand(parent),
		mWorkbench(workbench),
		mbExecuted(false) {}


	bool		isExecuted() { return mbExecuted; }

	// sub-class must execute this method in their implementation.
	virtual void	redo() { mbExecuted = true; }
	virtual	void	undo() { mbExecuted = false; }

protected:
	bool			mbExecuted;
	DAssEWorkbench* mWorkbench;
};

#endif